package com.xzc.drools.ruleExe;

import com.xzc.drools.entity.Order;
import org.junit.Test;
import org.kie.api.KieServices;
import org.kie.api.runtime.KieContainer;
import org.kie.api.runtime.KieSession;

public class C1 {
    @Test
    public void test() {
        KieServices kieServices = KieServices.Factory.get();
        KieContainer kieClasspathContainer = kieServices.getKieClasspathContainer();
        //申请会话，与规则引擎交互，也就是说这是2个东西
        KieSession kieSession = kieClasspathContainer.newKieSession();

        //准备输入源
        Order order = new Order();
        order.setOriginalPrice(210D);

        //将输入源放入session
        kieSession.insert(order);

        //开启规则引擎，跑逻辑
        kieSession.fireAllRules();

        kieSession.dispose();

        System.out.println(order.getOriginalPrice() + " : " + order.getRealPrice());
    }
}
